| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

Classes | Public Member Functions | Static Public Member Functions | List of all members
nkWinUi::FileExplorer Class Referenceabstract

A graphical file explorer. More...

Inheritance diagram for nkWinUi::FileExplorer:

## Classes
class | FileFilter
| Used to filter files in the interface. More...

## Public Member Functions
| FileExplorer (System *system) noexcept
virtual | ~FileExplorer ()
void | addFilter (nkMemory::StringView label, nkMemory::StringView extension)
FileFilter & | getFilter (unsigned int index)
void | setFilter (unsigned int index, nkMemory::StringView label, nkMemory::StringView extension)
void | setFollowSelfDir (bool value)
bool | getFollowSelfDir () const
void | setCurrentDir (nkMemory::StringView path)
nkMemory::StringView | getCurrentDir () const
virtual nkMemory::String | openDialog (bool forSave)=0
virtual void | exportIntrospection (nkExport::Node *rootNode) override
virtual void | importClassFromTree (nkExport::Node *rootNode) override
Public Member Functions inherited from nkWinUi::Component
| Component (System *system) noexcept
virtual | ~Component ()
Layout * | getLayout () const
Theme * | getTheme () const
Font * | getFont () const
nkMaths::Point | getPositionInParent () const
nkMaths::Point | getPositionInScreen () const
float | getWidth () const
float | getHeight () const
nkMaths::Rectangle | getAreaInParent () const
nkMaths::Rectangle | getAreaInScreen () const
virtual nkMaths::Point | getBorderExtents () const
virtual float | getBorderExtent (BORDER_KIND border) const
virtual float | getLayoutAllowedWidth () const
virtual float | getLayoutAllowedHeight () const
virtual float | getLayoutAllowedOffsetX () const
virtual float | getLayoutAllowedOffsetY () const
bool | isInitialized () const
System * | getSystem () const
Component * | getParentComponent () const
COMPONENT_TYPE | getComponentType () const
nkMemory::StringView | getComponentName () const
bool | getVisibility () const
virtual nkMemory::StringView | getLabel () const
void * | getData () const
bool | isEnabled () const
bool | isForegroundWindow () const
virtual unsigned int | getZDepth () const
bool | getVisibleOnLoad () const
std::function< bool(Component *)> | getCloseCallback () const
std::function< void(Component *, bool)> | getVisibilityCallback () const
std::function< void(Component *, const ClickEventData &)> | getClickCallback () const
std::function< void(Component *, const WheelEventData &)> | getWheelCallback () const
std::function< void(Component *, const KeyEventData &)> | getKeyCallback () const
virtual Layout * | setLayout (LAYOUT_TYPE layoutType)
virtual void | setTheme (Theme *theme)
virtual void | setFont (Font *font)
virtual void | setPositionInParent (nkMaths::Point position)
virtual void | setPositionInScreen (nkMaths::Point position)
virtual void | setSize (float width, float height)
virtual void | setWidth (float width)
virtual void | setHeight (float height)
void | setMinSize (float width, float height)
void | setMaxSize (float width, float height)
void | setRatio (float widthOverHeight)
virtual void | setAreaInParent (const nkMaths::Rectangle &area)
virtual void | setAreaInScreen (const nkMaths::Rectangle &area)
virtual void | setParentComponent (Component *parent, bool makeItVisible=true)
virtual void | setLabel (nkMemory::StringView label)
void | setComponentName (nkMemory::StringView name)
virtual void | setVisibility (bool value)
void | setData (void *data)
void | setEnabled (bool value)
void | setVisibleOnLoad (bool value)
void | setCloseCallback (std::function< bool(Component *caller)> callback)
void | setVisibilityCallback (std::function< void(Component *caller, bool visibility)> callback)
void | setClickCallback (std::function< void(Component *caller, const ClickEventData &eventData)> callback)
void | setWheelCallback (std::function< void(Component *caller, const WheelEventData &eventData)> callback)
void | setKeyCallback (std::function< void(Component *caller, const KeyEventData &eventData)> callback)
void | addChild (Component *child, bool makeItVisible=true)
void | removeChild (Component *child)
void | removeChild (unsigned int index)
Component * | getChild (unsigned int index)
unsigned int | getChildIndex (Component *child)
void | unloadWithChildren ()
void | loadWithChildren ()
void | updateZDepth ()
void | bringToForeground ()
void | focusWindow ()
nkMaths::Point | getCoordRelativeFromAbsolute (nkMaths::Point absCoords)
nkMaths::Point | getCoordAbsoluteFromRelative (nkMaths::Point relCoords)
virtual void | load ()=0
virtual void | unload ()=0
void | reload ()
virtual void | updateWindow ()
nkImages::Image | paintToImage (bool withFrame=false)
void | simulateEvent (const InputDescriptor &inputDescription)
virtual void | onSized ()
virtual void | exportClassToTree (nkExport::Node *rootNode) override
Public Member Functions inherited from nkExport::Exportable
| Exportable () noexcept
virtual | ~Exportable ()

## Static Public Member Functions
static nkMemory::UniquePtr< FileExplorer > | create (System *system=nullptr)

## Detailed Description

A graphical file explorer.

## Constructor & Destructor Documentation

## ◆ FileExplorer()

nkWinUi::FileExplorer::FileExplorer | ( | System * | system | ) |
| noexcept

Constructor.

Parameters

  system | The parent system in which the component will live.

Remarks
  See ComponentManager::createOrRetrieve().

## ◆ ~FileExplorer()

virtual nkWinUi::FileExplorer::~FileExplorer | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ addFilter()

void nkWinUi::FileExplorer::addFilter | ( | nkMemory::StringView | label,
|  | nkMemory::StringView | extension
| ) |  |

Adds a filter to the exploring.

Parameters

  label | The label to designate the filter.
  extension | The extension the filter will filter.

## ◆ getFilter()

FileFilter& nkWinUi::FileExplorer::getFilter | ( | unsigned int | index | ) |

Gets a set filter.

Parameters

  index | The index of the filter to retrieve.

Returns
  The filter at given index, if available. If out of bounds, the last filter is returned.

## ◆ setFilter()

void nkWinUi::FileExplorer::setFilter | ( | unsigned int | index,
|  | nkMemory::StringView | label,
|  | nkMemory::StringView | extension
| ) |  |

Change the filter at given index.

Parameters

  index | The index of the filter to change.
  label | The label to set for the filter.
  extension | The extension to use for the filter.

## ◆ setFollowSelfDir()

void nkWinUi::FileExplorer::setFollowSelfDir | ( | bool | value | ) |

Sets whether the explorer should keep track of its directory or not.

Parameters

  value | If the tracking should occur (true) or not (false).

## ◆ getFollowSelfDir()

bool nkWinUi::FileExplorer::getFollowSelfDir | ( |  | ) | const

Returns
  Whether this component tracks its active folder (true) or not (false).

## ◆ setCurrentDir()

void nkWinUi::FileExplorer::setCurrentDir | ( | nkMemory::StringView | path | ) |

Sets the directory the explorer will start in.

Parameters

  path | The path the directory should use for its folder.

## ◆ getCurrentDir()

nkMemory::StringView nkWinUi::FileExplorer::getCurrentDir | ( |  | ) | const

Returns
  The current dir the explorer tracks.

## ◆ openDialog()

virtual nkMemory::String nkWinUi::FileExplorer::openDialog | ( | bool | forSave | ) |
| pure virtual

Opens the explorer dialog for file searching.

Parameters

  forSave | Whether this dialog will be used to save a new file (true) or not (false).

Returns
  The absolute path the user selected using the dialog.

## ◆ exportIntrospection()

virtual void nkWinUi::FileExplorer::exportIntrospection | ( | nkExport::Node * | rootNode | ) |
| override virtual

A basic exporting capability, for components inheriting. Components inheriting this class should rather reimplement this function to export their internal data.

Parameters

  rootNode | The root of the tree to export into.

Reimplemented from nkWinUi::Component.

## ◆ importClassFromTree()

virtual void nkWinUi::FileExplorer::importClassFromTree | ( | nkExport::Node * | rootNode | ) |
| override virtual

A basic importing capability.

Parameters

  rootNode | The root of the tree to import from.

Reimplemented from nkWinUi::Component.

## ◆ create()

static nkMemory::UniquePtr<FileExplorer> nkWinUi::FileExplorer::create | ( | System * | system = `nullptr` | ) |
| static

Creates a standalone component, linking it to a system, but no manager. This method can be used to allocate a component and manually manage its lifetime.

Parameters

  system | The system to create the component into. If left to nullptr, then the Singleton instance will be used.

Returns
  The created component instance.

The documentation for this class was generated from the following file:

- Documentation/Headers/NilkinsWinUi/Components/FileExplorer.h